home *** CD-ROM | disk | FTP | other *** search
/ Champak 141 / (Vol 141) Oct 17 2011.iso / Games / despereaux-swings.swf / scripts / makai / MakaiMath.as < prev    next >
Encoding:
Text File  |  2011-10-17  |  3.2 KB  |  115 lines

  1. package makai
  2. {
  3.    import flash.geom.Point;
  4.    
  5.    public class MakaiMath
  6.    {
  7.       
  8.       public static var RAD:* = 180 / Math.PI;
  9.        
  10.       
  11.       public function MakaiMath()
  12.       {
  13.          super();
  14.       }
  15.       
  16.       public static function degreesToRadians(param1:Number) : *
  17.       {
  18.          return param1 / RAD;
  19.       }
  20.       
  21.       public static function radiansToDegrees(param1:Number) : *
  22.       {
  23.          return param1 * RAD;
  24.       }
  25.       
  26.       public static function vectorToAngle(param1:Vector) : Number
  27.       {
  28.          var _loc2_:* = undefined;
  29.          _loc2_ = Math.atan2(param1.x,param1.y) * RAD;
  30.          if(_loc2_ < 0)
  31.          {
  32.             _loc2_ += 360;
  33.          }
  34.          return _loc2_;
  35.       }
  36.       
  37.       public static function distance(param1:*, param2:* = 0, param3:* = 0, param4:* = 0) : Number
  38.       {
  39.          var _loc5_:* = undefined;
  40.          var _loc6_:* = undefined;
  41.          if(param1 is Number)
  42.          {
  43.             _loc5_ = param1 - param3;
  44.             _loc6_ = param2 - param4;
  45.          }
  46.          else if(param1 is Point)
  47.          {
  48.             if(param2 is Point)
  49.             {
  50.                _loc5_ = param1.x - param2.x;
  51.                _loc6_ = param1.y - param2.y;
  52.             }
  53.             else
  54.             {
  55.                _loc5_ = param1.x;
  56.                _loc6_ = param1.y;
  57.             }
  58.          }
  59.          return Math.sqrt(_loc5_ * _loc5_ + _loc6_ * _loc6_);
  60.       }
  61.       
  62.       public static function angleToVector(param1:Number) : Vector
  63.       {
  64.          var _loc2_:* = undefined;
  65.          var _loc3_:* = undefined;
  66.          var _loc4_:* = undefined;
  67.          _loc2_ = param1 / RAD;
  68.          _loc3_ = Math.cos(_loc2_);
  69.          _loc4_ = Math.sin(_loc2_);
  70.          return new Vector(_loc3_,_loc4_);
  71.       }
  72.       
  73.       public static function rand(param1:Number) : *
  74.       {
  75.          var _loc2_:Number = NaN;
  76.          _loc2_ = Math.floor(Math.random() * param1);
  77.          trace(_loc2_);
  78.          return _loc2_;
  79.       }
  80.       
  81.       public static function inRange(param1:Number, param2:Number, param3:Number) : Number
  82.       {
  83.          var _loc4_:Number = NaN;
  84.          _loc4_ = Math.max(param1,param2);
  85.          return Math.min(_loc4_,param3);
  86.       }
  87.       
  88.       public function getSlope(param1:*, param2:*, param3:*, param4:*) : *
  89.       {
  90.          return param2 - param4 / param1 - param3;
  91.       }
  92.       
  93.       public function getIntercept(param1:*, param2:*, param3:*) : *
  94.       {
  95.          return param2 - param1 * param3;
  96.       }
  97.       
  98.       public function getIntersection(param1:*, param2:*, param3:*, param4:*, param5:*, param6:*, param7:*, param8:*) : *
  99.       {
  100.          var _loc9_:* = undefined;
  101.          var _loc10_:* = undefined;
  102.          var _loc11_:* = undefined;
  103.          var _loc12_:* = undefined;
  104.          var _loc13_:* = undefined;
  105.          _loc9_ = getSlope(param1,param2,param3,param4);
  106.          _loc10_ = getSlope(param5,param6,param7,param8);
  107.          _loc11_ = getIntercept(param1,param2,_loc9_);
  108.          _loc12_ = getIntercept(param5,param6,_loc10_);
  109.          (_loc13_ = new Object()).x = _loc12_ - _loc11_ / _loc9_ - _loc10_;
  110.          _loc13_.y = _loc9_ * _loc13_.x + _loc11_;
  111.          return _loc13_;
  112.       }
  113.    }
  114. }
  115.